package com.carkeeper.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.carkeeper.dto.ComponentDTO;
import com.carkeeper.pojo.ComponentPO;
import com.carkeeper.vo.ComponentVO;

import java.util.List;

/**
 * @author ：XXX
 * @date ：Created in 2020/6/3
 * @description ：
 * @version: 1.0
 */
public interface ComponentService {
    /**
     * 根据ID查询配件
     *
     * @param id
     * @return
     */
    ComponentVO queryComponentById(Long id);

    /**
     * 增加配件
     *
     * @param componentPO
     */
    boolean add(ComponentPO componentPO);

    /**
     * 修改配件信息
     *
     * @param componentPO
     */
    boolean update(ComponentPO componentPO);

    /**
     * 根据ID删除配件
     *
     * @param componentId
     */
    boolean delete(long componentId);


    /**
     * 获取配件分页数据
     *
     * @param page              页码
     * @param pageSize          页尺寸
     * @param storeName         商家名称
     * @param code              配件编码
     * @param componentName     配件名称
     * @param specification     规格
     * @param componenBrandName 配件品牌名称
     * @param componentTypeName 配件分类名称
     * @return 配件分页数据
     */
    Page<ComponentPO> query(Long page,
                            Long pageSize,
                            String storeName,
                            String code,
                            String componentName,
                            String specification,
                            String componenBrandName,
                            String componentTypeName,
                            Integer state);


    List<ComponentDTO> getByIds(List<Long> ids);

}
